package com.mind.customer.mapper;

import com.mind.system.domain.AjObject;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;

import java.util.List;

/**
 * 对象(AjObject)表数据库访问层
 *
 * @author makejava
 * @since 2024-07-11 17:40:11
 */
public interface AjObjectMapper {

    /**
     * 查询对象数据集合
     *
     * @param object 对象信息
     * @return 对象数据集合
     */
    public List<AjObject> selectObjectList(AjObject object);

    /**
     * 通过对象ID查询对象信息
     *
     * @param objectId 对象ID
     * @return 角色对象信息
     */
    public AjObject selectObjectById(Long objectId);

    /**
     * 删除对象信息
     *
     * @param objectId 对象ID
     * @return 结果
     */
    public int deleteObjectById(Long objectId);

    /**
     * 批量删除对象信息
     *
     * @param objectIds 需要删除的对象ID
     * @return 结果
     */
    public int deleteObjectByIds(Long[] objectIds);

    /**
     * 修改对象信息
     *
     * @param object 对象信息
     * @return 结果
     */
    public int updateObject(AjObject object);

    /**
     * 新增对象信息
     *
     * @param object 对象信息
     * @return 结果
     */
    public int insertObject(AjObject object);

    /**
     * 批量新增对象信息
     *
     * @param objectList 对象信息
     * @return 结果
     */
    public int insertObjectBatch(List<AjObject> objectList);


    /**
     * 根据名称查对象
     *¡
     * @param name 对象名称
     * @return 结果
     */
    AjObject selectObjectByName(@Param("ticketType") String ticketType, @Param("name") String name);

    /**
     * 根据名称查对象
     *
     * @param name 对象名称
     * @return 结果
     */
    AjObject selectObjectByName2( @Param("name")String name);

    AjObject selectObjectByCate(@Param("ticketType") String ticketType, @Param("tickCate") String tickCate);

    List<AjObject> selectObjectBySourceId(@Param("sourceIds") String sourceIds);
}

